﻿#pragma once
#include <QObject>

namespace wcs {
	// 机械手物料请求
	struct RobItemApply {
		QString robNo;	// 机械手编号
		QString skuNo;	// 物料编号
		QString taskId;
		int msgId;
		int type;		// 物料类型 1 物料, 2 拆垛托盘、3 码垛托盘、4 托盘垛。
		int num;		// 物料数量
		int pos;		// 物料摆放方式 0 null, 1 横, 2 纵
	};
	struct ItemApplyAns {
		int result;		// 请求结果
		int type;		// 物料类型
		int num;		// 物料数量
	};

	// 任务完成
	struct RobTaskFinish {
		QString robNo;
		QString taskId;			// 任务ID
		int taskNum;		// 完成数量
		QString stackPlace;		// 物料位置
		int taskFinish;		// 任务是否完成
		int stackFinish;	// 码垛是否完成
		int residueNum;		// 满垛剩余数量
	};

	// 物料移走通知
	struct RobSkuMove {
		QString robNo;		// 机械手ID
		QString taskId;		// 任务ID
		QString boxLine;	// 业务线
		int boxNum;			// 箱子数量
		QStringList boxId;	// 箱子编号数组
	};

	// 机械手的到位通知
	struct RobArriveInfo {
		QString robNo;	// 编号
		QString taskId;	// 任务编号
		QString place;	// 位置
		int type;		// 物品类型
		int num;		// 数量
		int msgId;		// 消息ID
	};
}

